home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 31 / Amiga Format CD31 (1998-09-02)(Future Publishing)(GB)(Track 1 of 2)[!][issue 1998-10].iso / -readerstuff- / markus_pohlmann / readme < prev    next >
Text File  |  1998-07-27  |  3KB  |  61 lines

  1.  
  2. Hy to all the Amos-Users out there!
  3.  
  4. The two programms Fireworks and 3dFangen are delivered twice.
  5. 1. .comp means it is the compiled version.
  6. 2. .amos means it is the source of the programm.
  7.  
  8. I also included the compiled ones to make it possible for other people
  9. to look at.
  10.  
  11. Both programm require the mathtrans.library but there is no Workbench
  12. without it.
  13. I programm on an Amiga 1200 with a Cyberstorm MK III. This means I have a
  14. 68060 in my tower. I have no posibility to check the timing for lower 
  15. configurations but Amos does not make use of the whole 68060. A 68030 should
  16. keep the desired framerate but everything below this will cause a slowdown!
  17.  
  18. You are free to look around in the sourcecode and I also allow you
  19. to use any part of my sourcecode in your programms.
  20. I only want to be credited for this. And of course it would be nice to get
  21. a version of your programm just to look at how you used it.
  22.  
  23. Fireworks is not explained, but I guess you will understand quickly how it
  24. works. You do not have to change the For ... Next commands to play around
  25. wth the missiles, just change the variables in the first few lines (this
  26. is explained...)
  27.  
  28. 3dFangen is the try to programm a workshop of the German magazine called 
  29. "Amiga Plus". I had some problems to do it with Amos (speed) and I did not
  30. completely follow the workshop. There still is no texture mapping and no 
  31. enemies. It is not really a complete game.
  32. You just have to hunt the column. If you get it, a new one appears somewhere.
  33. Press `h` to display two hands or `b` to make the screen bouce while walking.
  34. I tried my best to comment the source so that you can understand it.
  35. Perhaps some more words here if you have trouble with the structure:
  36. To build a picture I send a "light beam" out until it hits a wall.
  37. If it has hit the wall, I calculate the distance and convert the distance
  38. into a height (the farther away the smaller the wall appears to be of course).
  39. I do this with many beams of the viewing angle (in my programm that is 
  40. 90 degrees ;) . The variable "detail" stores the x position of the next piece
  41. of wall that has to be drawn. I send out "thick" light beams ;).
  42. If one has hit then a piece of wall is drawn that is "detail" pixel wide so 
  43. that every setting of the grade of detail produces a picture that nearly
  44. fills the screen.
  45. How do I store the map? I first draw that picture and then store it into
  46. a memory bank. If you do not know how to programm memory banks (I had much
  47. troule learning this) then you will have problems with the source, sorry!
  48. I firstkept the picture annd checked with the point(x,y) command if there
  49. is any wall but this was to slow. Then I tried to store the map into an
  50. array wich was much faster. But using direct memory access is even faster than
  51. an array because the computer does not have to calculate the position of
  52. the variables, you directly give the correct address.
  53.  
  54. Just have a look at it! If you can improve it (you really can I 
  55. think!) then please send me your improved version! 
  56.  
  57.  
  58. Have fun and keep Amos alive!
  59.  
  60.  Markus Pohlmann
  61.